<?php
/**
 * 侧边栏数据管理类。
 *
 */
class Sidebar
{
	/**
	 * PDO 数据对象。
	 *
	 * @var LeeNT_MySql
	 */
	private $db = NULL;
	
	/**
	 * 构造函数。
	 *
	 * @param LeeNT_MySql $db
	 */
	function __construct(&$db) {
		$this->db = &$db;
	}
	
	/**
	 * 模版对象赋值。
	 *
	 * @param BasePage $container
	 * @param int $style
	 */
	function setDefault($container, $style = 1) {
		// 读取日志分类...
		if (1 == ($style & 1)) {
			$d = $this->db->fetchAll("SELECT * FROM `tbg_categories`");
			$container->assign('sidebar_categories', $d);
		}
		// 读取日志归档目录...
		if (2 == ($style & 2)) {
			$d = $this->db->fetchAll("SELECT * FROM `tbg_directories`");
			$container->assign('sidebar_directories', $d);
		}
		// 读取日志归档目录...
		if (4 == ($style & 4)) {
			$d = $this->db->fetchAll("SELECT * FROM `tbg_links`");
			$container->assign('sidebar_links', $d);
		}
	}
	
	/**
	 * 获取静态实例。
	 *
	 * @param LeeNT_MySql $db
	 * @return Sidebar
	 */
	static function getInstance(&$db) {
		return (new Sidebar($db));
	}
}